#ifndef __ATTRIBUTE_DTD__
#define __ATTRIBUTE_DTD__

#include <vector>
#include <stdlib.h>
#include <stdio.h>
#include <string>

using namespace std;

enum Type {Cdata, Enum, Atom};
enum Necessity {Implied, Required, Fixed};
/* The attributes will always be declared with the type CDATA and the default #implied in our case but to use these enums and store type and necessity for the evolutivity */


class AttributeDTD
{
	private:
		string name;
		string elementAssociated;
		Type type;
		Necessity necessity;


	public:
		AttributeDTD(const char * nom, Type t, Necessity n);
		void setElementAssociated(const char * name);
		string getElementAssociated() const;
		string getName() const;
		/**Print the structure of the attribute*/
		virtual void display() const;
		virtual ~AttributeDTD() {}
};

#endif
